/*
* ============================================================================
*  Name     : CV8LogCallView from V8LogCallView.h
*  Part of  : v8Log
*  Created  : 2006-4-7 by key
*  Description:
*     Declares view for application.
*  Version  :
*  Copyright: http:www.3gv8.com
* ============================================================================
*/

#ifndef V8LOGCALLVIEW_H
#define V8LOGCALLVIEW_H

// INCLUDES
#include <aknview.h>


// CONSTANTS
// UID of view
const TUid KView2Id = {2};

// FORWARD DECLARATIONS
class MEventsObserver;
class CV8LogCallContainer;
class CV8LogAppUi;

// CLASS DECLARATION

/**
*  CV8LogCallView view class.
* 
*/
class CV8LogCallView : public CAknView
    {
    public: // Constructors and destructor

        /**
        * EPOC default constructor.
        */
        void ConstructL(CV8LogAppUi* aUI);

        /**
        * Destructor.
        */
        ~CV8LogCallView();

    public: // Functions from base classes
	    void ResetEventList();
                        
		/**
        * From CAknView returns Uid of View
        * @return TUid uid of the view
        */
        TUid Id() const;

        /**
        * From MEikMenuObserver delegate commands from the menu
        * @param aCommand a command emitted by the menu 
        * @return void
        */
        void HandleCommandL(TInt aCommand);

        /**
        * From CAknView reaction if size change
        * @return void
        */
        void HandleClientRectChange();

    private:

        /**
        * From CAknView activate the view
        * @param aPrevViewId 
        * @param aCustomMessageId 
        * @param aCustomMessage 
        * @return void
        */
        void DoActivateL(const TVwsViewId& aPrevViewId,TUid aCustomMessageId,
            const TDesC8& aCustomMessage);

        /**
        * From CAknView deactivate the view (free resources)
        * @return void
        */
        void DoDeactivate();

    private: // Data
	    void DynInitMenuPaneL(TInt aResourceId, CEikMenuPane* aMenuPane);
      CV8LogCallContainer* iContainer;
	  CV8LogAppUi* ui;
    };

#endif

// End of File
